home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 28
/
Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso
/
Aminet
/
dev
/
c
/
dice-3.16.lha
/
doc
/
errors.doc
< prev
next >
Wrap
Text File
|
1994-02-13
|
21KB
|
721 lines
ERRORS.DOC
***********************************************************************
* *
* *
* DCPP ERROR MESSAGES *
* *
* *
***********************************************************************
"#undef: no symbol specified"
You have an #undef directive which specifies no symbol to undef
"maximum number of macro arguments exceeded (256)"
Macros cannot deal with more then 256 arguments (think that's
enough!)
"Expected comma"
"Expected ')'"
Generally occurs when parsing macros, a comma or closing paren
was expected.
"Macro <name>, expected '('"
A macro defined as taking arguments was used without specifying
those arguments.
"Recursive use of macro <macroname>"
You called a macro recursively, this would lead to an infinite loop
"Macro crosses #include boundry"
A wierd error you should never get
"Replace Soft Error ..."
"Soft error ..."
Please report immediately! Software error within dcpp.
"Not enough arguments to macro"
You referenced a macro taking more arguments then you supplied!
"Maximum # of include/macro levels exceeded (32)"
DCPP can handle up to 32 levels of includes and macro nestings
"Size Error <file> (<offset>)"
"Read Error <file>"
These are errors associated with file access. "Size Error" in
particular is more indicative of a possible bug in DCPP
"stringtize '#' valid only before macro argument"
You may only stringtize a macro argument as in:
#define stringof(fubar) #fubar
Attempting to stringtize other tokens is illegal
"#if's left pending over from include after EOF: ..."
One or more #if's was left unclosed (i.e. no matching #endif)
at the end of a file. While you can nest #include's in #if's
you cannot start an #if in an #include and #endif it outside
that #include.
"Unexpected EOF (unterminated comment)"
A comment was left unterminated when the file EOF occured.
"cpp: unterminated string"
"cpp: unterminated '"
"unterminated character constant"
Unterminated string and/or character constants were detected
"syntax error"
"too many ')'"
"expression too complex"
These occur during DCPP expression parsing for #if's and are
indicative an problems in your expression
"directive: unexpected EOF"
An unexpected end-of-file occured while processing a # directive.
"Maximum # of if levels (256)"
You may only have up to 256 levels of #if nesting
"double #else ?"
Occurs when you have an #else without an #if, or something
like: #if fubar ... #else ... #else ... #endif, which is illegal.
"#endif without associated #if"
Occurs when you have an #endif without a matching #if.
"Expected " or <"
"Expected " or >"
#include's use "filename" or <filename> delimiting. Note that
DCPP does not handle macro expansion in #include statements yet.
***********************************************************************
* *
* *
* DC1 ERROR MESSAGES *
* *
* *
***********************************************************************
9: "Unexpected EOF"
The source or header file ended abruptly, for example ending in
the middle of a quoted string. More stuff was expected.
10: "Char Const Too Large!"
Only 4 characters are allowed within a character constant, more
than four, such as 'abcde' (the single quotes are part of the
example) will generate this error.
11: "NewLine in string constant"
A newline occurs within a string constant, such as the next
two lines:
"abcd
efgh"
This is not legal under ANSI C. Instead, you can create a single
large string using "string1" "string2" ... two sets of quotes
strings with no delimiter
12: "Illegal character '%c' $%02x"
Certain characters, such as '#' not part of a preprocessor
directive, are illegal. Example: int x = 43#;
13: "Unexpected Token '%s' expected '%s'"
The expected token wasn't the one we got! The error message
tells you what the character was and what was expected.
14: "__geta4 keyword does NOT work with residentable executables!"
__geta4 requires the data base to be at a known absolute
relocatable location. You cannot use __geta4 in conjuction
with -r because residentable code allocates its data segment
at run time.
15: "More than 32K of auto variables!"
DICE accesses all stack variables using word-register-relative,
thus no more than 32KBytes worth of stack variables may be
declared.
16: "struct/union return not supported yet"
This version of DICE does not yet support structural return
values from procedures.
17: "constant does not fit storage: %d"
DICE will, in some cases, catch the use of constants that are
out of range in a particular situation... for example, specifying
the constant '128' in relation to a signed character (-128 to 127).
DICE checks constant-fit only in hazzardous situations.
18: "size mismatch: %d, %d"
This is a code generation error which can occur when you
compare or run operations on incompatible types.
19: "repeated case: %d (0x%08lx)"
The specified case, given in both decimal and hex, occurs more
than once within a switch statement.
20: "block operation error in source"
21: "block operation error in dest"
Generally means that either the source or the destination of
a block-op, such as a structure assignment, are incompatible.
For example:
foo = bar;
where foo has a different structure type than bar. Generally
this error is preceeded by an "illegal assignment" error.
22: "dest not lvalue"
Generally occurs if the object of an assignment is not assignable.
However, note that DICE is notably weak in this area... it will
cheerfully allow you to do things like (a + b) = c + d;, obviously
illegal.
23: "syntax error in expression"
A General syntax error in an expression occured. Usually occurs
due to an illegally constructed expression, such as: a ] b;
can also occur due to too few parenthesis.
24: "expected expression"
An expression was expected when, instead, either nothing or a
statement was found. This can also occur due to a syntax error
in the expression.
"expected '}'"
A close brace was expected, for example, a global declaration
such as: int a[] = { 1, 2, 3;
"expected %d close parens"
Expected one or more close parenthesis in an expression.
"expected close bracket"
Expected a close bracket ']', generally caused by an incomplete
array index such as a[i = 4;
"expected identifer after . or ->"
A structure indirection via '.' or '->' requires a structure
member to be specified. i.e. a field name.
"expected ',' or ')' in function call"
Expected a delimiter in a function call... either comma if another
argument is to be given, or a close parenthesis to end the function
call.
"undefined symbol: %s"
The given symbol is not defined. For example, referencing a
variable that was not defined or extern'd.
"expected integer constant"
An integer constant was expected, generally occurs when you
declare an array. For example, the following is illegal:
int i[j];
"not an lvalue"
Occurs when an lvalue was expected, usually in an assignment. An
lvalue is an expression which exists in real storage, for example:
*ptr = 4; ... the expression '*ptr' points to real storage where
as the expression (a + b) in (a + b) = 4; does NOT. Note that DICE
is not very good at catching lvalues errors yet.
"goto label not found"
One or more 'goto label;' statements in a procedure specifies
a non-existant label.
"constant div/mod by 0"
You attempted to use the '/' or '%' operator with the constant
value 0 on the right hand side. Division/Modulus by 0 is illegal.
"ptr-ptr mismatch"
Generally occurs in a pointer comparison or assignment. The
two pointers do not point to the same type. Example,
char *a; long *b; if (a < b);
"unexpected void type"
Occurs due to an illegally constructed expressi